#ifndef HISTORYDAO_H
#define HISTORYDAO_H

#include <QSqlDatabase>
#include <QSqlQuery>
#include <QDateTime>
#include <QString>
#include <QList>

// 新增：定义历史记录结构体
struct PlayHistoryRecord {
    QString musicName;
    QString playTime;
};

class historydao
{
public:
    // 单例模式
    static historydao& getInstance();
    // 保存播放记录
    bool savePlayHistory(int userId,const QString& musicName);
    // 获取用户播放历史
     QList<PlayHistoryRecord> getPlayHistory(int userId,int limit = 100);

private:
    historydao();
    ~historydao();
    historydao(const historydao&) = delete;
    historydao& operator=(const historydao&) = delete;
    // 初始化数据库连接
    bool initDatabase();
    void initHistoryTable();

    QSqlDatabase db;
    QString dbName;
};

#endif // HISTORYDAO_H
